Conventionally, Mobile IPv6 has been known as the technique for implementing mobility with layer 3. In Mobile IPv6, a Mobile Node (MN) has a home network, to which a HA residing in the home network assigns a Home address (HoA). On the other hand, when the MN moves away from the home network to connect with a foreign network, the MN acquires a care-of address (CoA) in the foreign network, and registers binding information indicating association of the home address with the care-of address at the Home Agent (HA) in its own home network, thus managing mobility.
In the case where a plurality of HAs existing on different home networks are assigned to one MN, each HA will assign a home address to the MN. Thus, the MN is allowed to switch a home address to be used depending on a communication partner, or to compare a load on communication path and a cost for use when the respective home addresses are used to select a home address most suitable to the request from the MN. Therefore, a significant effects can be obtained when a plurality of HAs and home addresses are assigned to one MN.
On the other hand, the plurality of HAs each assigning a home address to one MN exist independent of each other, and therefore when communication is performed using a home address assigned by each HA, the MN will use the conventional mobile IPv6 individually to the home addresses. That is to say, since the MN applies the mobile IPv6 to each of the addresses existing independent of each other, a plurality of operations according to mobile IPv6 will take place independent of each other.
FIG. 16 illustrates an exemplary network configuration including a MN 910 to which a plurality of HoAs are assigned in the conventional technique. The MN 910 can use a HA 911 existing in a home network 916 as its own home agent and a HA 912 existing in a home network 917. The MN 910 has a home address (HoA1) assigned thereto by the home network 916, where a HA 11 manages the HoA1. The MN 910 further has a home address (HoA2) assigned thereto by the home network 917, where the HA 912 manages the HoA2.
In FIG. 16, the MN 910 connects with a foreign network 913 via an interface (IF) 920, to which a CoA is assigned by the foreign network 913. The HA 911 and HA 912 each have a binding cache registered therein, where the CoA is assigned with the home address (HoA1, HoA2). Further, the MN 910 uses HoA1 for the communication with a Correspondent Node (CN) 914, and uses HoA2 for the communication with a CN 915. Herein, a packet transmitted from the CN 914 to HoA1 of the MN 910 passes through a communication path 919a via the HA 911, and a packet transmitted from the CN 915 to HoA2 of the MN 910 passes through a communication path 919b via the HA 912.
Then, when the MN 910 in such a state moves to connect with the home network 916 as one of its own home networks, HoA1 will be assigned to the interface of the MN 910. Thus, the communication with the CN 914 is switched from the communication using CoA via the HA 911 to direction communication using HoA1. Meanwhile, in order to continue the communication with the CN 915, the MN 910 associates HoA1 assigned to the interface as a care-of address of HoA2 and registers the same at the HA 912. In this case, since HoA1 is dealt with as just a care-of address for HoA2, a packet addressed to HoA2 will be transferred to HoA1 through normal processing by the HA 912.
In this way, in the case where one MN can use a plurality of HAs and HoAs, one of the home addresses can be used while being associated it with as a care-of address of the other home address. Further, not only when the home address is assigned to the interface because of the connection with the home network as stated above but also when a home address is not assigned to the interface because of the connection with the foreign network, the home address can be registered as a CoA. In this case, a still further HA can be designated as a new transfer destination of a packet proxy-received by a certain HA.
Meanwhile, Non-Patent Document 1 discloses a method of limiting the number of times of the encapsulation of a packet by using Tunnel Encapsulation Limit (TEL) option. More specifically, according to the technique disclosed by Non-Patent Document 1, an allowable number of times of the packet encapsulation is inserted in an encapsulation header as a TEL option, and when encapsulation is newly performed, a value obtained by subtracting from the allowable number of times is inserted into a new encapsulation header as TEL option, so that multiple encapsulation exceeding the number of times determined as the TEL option during the first encapsulation can be avoided.
Non-Patent Document 1: A. Conta, S. Deering, “Generic Packet Tunneling in IPv6 Specification”, RFC2473, Dec. 1998
In the situation where a MN can use two HAs and home addresses, however, when each home address is associated with as a care-of address of the other home address, the two HAs will set home addresses managed by different HAs as their transfer destinations of packets, resulting in a possibility of reflection where packet transfer is repeated between the two HAs. For instance, in the connection state of the MN 910 as in FIG. 16, binding information with CoA and HoA2 associated with HoA1 can be registered at the HA 911, and binding information with CoA and HoA1 associated with HoA2 can be registered at the HA 912.
At this time, the HA 911 that receives as a proxy a packet transmitted by the CN 914 checks its own binding cache to select the next transfer destination from the plurality of care-of addresses (CoA and HoA2) associated with HoA1. Herein, in the case where HA911 selects HoA2 registered as a care-of address as the transfer destination, an encapsulated packet is transferred to the home network 917 and is received by the HA 912 as a proxy. At this time, similarly to the HA 911, the HA 912 checks its own binding cache to select the next transfer destination from the plurality of care-of addresses (CoA and HoA1) associated with HoA2. If the HA 912 selects as the transfer destination HoA1 registered as a care-of address, the encapsulated packet is transferred to the home network 916, which is then received again by the HA 911 as a proxy. In this way, if two HAs select the home addresses mutually managed as their transfer destination addresses, reflection occurs between the two HAs. As a result, a load on the transfer paths between the HAs will increase, thus causing delay in transferred packets or causing a packet loss.
Meanwhile, when receiving a packet as a proxy and transferring the packet, a HA encapsulates the packet. Thus, if reflection occurs between the two HAs as in the above, the packet transferred repeatedly between the two HAs will be subjected to multiple encapsulation as the reflection proceeds. Thus, the multiple encapsulation is detected using the TEL option defined by Non-Patent Document 1, for example, whereby the packet transfer repeated in accordance with the reflection can be suppressed.
The TEL option defined by Non-Patent Document 1, however, simply limits the encapsulation, and therefore another HA receiving the packet as a proxy will stop the further packet transfer. For instance, in the case where the TEL option is applied to the above-stated HA 911 and HA 912, it is possible to avoid, for the HA 911, further encapsulation and transfer of a packet by another HA by adding the TEL option with “0” set in the transmitted encapsulation packet. In this case, however, when receiving the packet including such a TEL option, the HA 912 judges that further encapsulation is not allowed because “0” is set in the TEL option, thus making it impossible to encapsulate the packet and transfer the same to a normal CoA as well.
On the other hand, when the TEL option is added with a value of “1” or larger set in the transmitted encapsulation packet, the HA 912 that receives this packet as a proxy is allowed to encapsulate a packet and transfer the same to a normal CoA. However, if reflection occurs, the reflection cannot be detected unless the HA 912 further transfers once or more (redundant transfer). Moreover, the TEL option defined by Non-Patent Document 1 simply limits the multiple encapsulation, which can only estimate the possibility that reflection may occur when the multiple encapsulation occurs upper limit number of times. In other words, the TEL option defined by Non-Patent Document 1 can estimate the occurrence of reflection, but cannot detect the occurrence of reflection accurately.